<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title></title>
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <style>
        input[type=range] {
            -webkit-appearance: none;
            width: 300px;
            border-radius: 10px; /*这个属性设置使填充进度条时的图形为圆角*/
        }
        input[type=range]::-webkit-slider-thumb {
            -webkit-appearance: none;
            height: 25px;
            width: 25px;
            margin-top: -5px; /*使滑块超出轨道部分的偏移量相等*/
            background: #ffffff;
            border-radius: 50%; /*外观设置为圆形*/
            border: solid 0.125em rgba(205, 224, 230, 0.5); /*设置边框*/
            box-shadow: 0 .125em .125em #3b4547; /*添加底部阴影*/
        }
        input[type=range]::-webkit-slider-runnable-track {
            height: 15px;
            border-radius: 10px; /*将轨道设为圆角的*/
            box-shadow: 0 1px 1px #def3f8, inset 0 .125em .125em #0d1112; /*轨道内置阴影效果*/
        }
        input[type=range]:focus {
            outline: none;
        }

    </style>
</head>
<body>
<div id="app">
    <input type="range" v-model="value" min="0" max="100" step="0.1" @input="handleInput($event)"/>
</div>
<script>
    var vm = new Vue({
        el:'#app',
        data:{
            value:0
        },
        methods:{
            handleInput(e){
                console.log(this.value)
//						console.log(e)
                e.target.style.background = 'linear-gradient(to right, #059CFA, white ' +
                    this.value + '%, white)'
            }
        }
    })
</script>
</body>
</html>
